import type { PageParam, PageResult } from '@vben/request';
import { requestClient } from '#/api/request';

export namespace AiDutyStatusRecordsApi {
  /** 员工在/离岗记录信息 */
  export interface AiDutyStatusRecords {
    id: number; // 编号
    empeId?: number; // 系统员工编号
    userid?: string; // 员工id
    type?: number; // 类型：1在岗2离岗3离岗误报
    startTime?: number; // 开始时间
    // endTime: number; // 结束时间
    duration:number; // 时长
    falseAlarm: number; // 误报：0正常1误报
    camera: string; // 离岗摄像头
  }
   export interface CombinedRecords {
    id: number; // 编号
    userid?: string; // 员工id
    name: string; // 员工姓名
    deptNames: string; // 所属部门
    subsidiary: string; // 所属子公司
    ofDate: string; // 日期
    onDutyParts: string; // 在岗时段
    onDutyDuration: number; // 在岗时长
    offDutyParts: string; // 离岗时段
    offDutyDuration: number; // 离岗时长
    onDutyRate: string; // 在岗率
    misconductNum: number; // 违规次数
  }
}
interface Params {
    [key: string]: any;
}

/** 查询员工在/离岗记录分页 */
export function getAiDutyStatusRecordsPage(params: PageParam) {
  return requestClient.get<PageResult<AiDutyStatusRecordsApi.AiDutyStatusRecords>>('/moxi/ai-duty-status-records/page', { params });
}

/** 查询员工在/离岗记录详情 */
export function getAiDutyStatusRecords(id: number) {
  return requestClient.get<AiDutyStatusRecordsApi.AiDutyStatusRecords>(`/moxi/ai-duty-status-records/get?id=${id}`);
}

/** 新增员工在/离岗记录 */
export function createAiDutyStatusRecords(data: AiDutyStatusRecordsApi.AiDutyStatusRecords) {
  return requestClient.post('/moxi/ai-duty-status-records/create', data);
}

/** 修改员工在/离岗记录 */
export function updateAiDutyStatusRecords(data: AiDutyStatusRecordsApi.AiDutyStatusRecords) {
  return requestClient.put('/moxi/ai-duty-status-records/update', data);
}

/** 删除员工在/离岗记录 */
export function deleteAiDutyStatusRecords(id: number) {
  return requestClient.delete(`/moxi/ai-duty-status-records/delete?id=${id}`);
}

/** 批量删除员工在/离岗记录 */
export function deleteAiDutyStatusRecordsList(ids: number[]) {
  return requestClient.delete(`/moxi/ai-duty-status-records/delete-list?ids=${ids.join(',')}`)
}

/** 导出员工在/离岗记录 */
export function exportAiDutyStatusRecords(params: any) {
  return requestClient.download('/moxi/ai-duty-status-records/export-excel', params);
}

// 误报
export function falseAlarm(data: AiDutyStatusRecordsApi.AiDutyStatusRecords) {
    return requestClient.put('/moxi/ai-duty-status-records/falseAlarm', data);
  }
//查询员工轨迹
export function getTrack(params: Params) {
    return requestClient.get<any>('/moxi/ai-duty-status-records/track', { params });
}

//综合人效报表分页
export function getCombinedPage(params: PageParam) {
  return requestClient.get<AiDutyStatusRecordsApi.CombinedRecords>(`/moxi/report-empe-combined/page`,{ params });
}
